class_name UnitBaseConfig
extends Resource


@export_category("Base")
@export var speed: float = 0
@export var approach_speed: float = 0
@export var search_range: float = 0

@export var base_life: int = 10
@export var base_attack: int = 1
@export var base_critical_attack_rate: float = 0.1
@export var base_critical_attack_bonus: float = 0.1
@export var base_knockback: int = 20
@export var base_anti_knockback: int = 10
@export var base_defense: int = 1

@export var unit_resource_name: String = ""

@export var drop_config: DropConfig

# drop death
@export_category("DropHeight")
@export var safe_drop_height: float = 150
@export var death_drop_height: float = 300

# walk cam shake
@export_category("WalkCamShake")
@export var walk_cam_shake: bool = false
@export var walk_cam_shake_max_distance: float = 100
@export var walk_cam_shake_max_intensity: float = 1
@export var walk_cam_shake_duration: float = 0.1

# main attack
@export_category("MainAttack")
@export var main_attack: float = 0
@export var main_attack_range: float = 0
@export var main_critical_attack_rate: float = 0
@export var main_critical_attack_bonus: float = 0
@export var main_attack_knockback: float = 0
@export var main_attack_affect_vertical_velocity: float = 0
@export var main_attack_cooldown: float = 0
@export var main_attack_cam_shake: bool = false
@export var main_attack_cam_shake_max_distance: float = 150
@export var main_attack_cam_shake_intensity: float = 5.0
@export var main_attack_cam_shake_duration: float = 0.3

@export_category("ShootWeapon")
@export var shoot_weapon_name: String = ""
@export var shoot_weapon_start_speed: float = 0

@export_category("StealHpRate")
@export var steal_hp_rate: float = 0

# poison effect
@export_category("PoisonDebuff")
@export var poison_hit_rate: float = 0
@export var poison_debuff_duration: float = 0
@export var poison_damage_per_second: float = 0

@export_category("FlameDebuff")
@export var flame_debuff_hit_rate: float = 0
@export var flame_damage_per_second: float = 0
@export var flame_debuff_duration: float = 0

@export_category("NumbDebuff")
@export var numb_debuff_hit_rate: float = 0
@export var numb_speed_scale: float = 0
@export var numb_debuff_duration: float = 0
